Embedded objects are known in the art. Generally, embedded objects are individual software modules designed to carry out specific tasks, functions or operations. Accordingly, embedded objects can be used as building blocks in developing computer programs. For example, a software application can call on an embedded object for implementing a particular task. Examples of embedded objects are Component Object Model (COM), Object Linking and Embedding (OLE) and ActiveX, all of which provided by Microsoft. COM and OLE were replaced by (and are included in) ActiveX. ActiveX controls are generally small programs that can be embedded in other programs or software applications. For example, an ActiveX control may include COM programs (modules) that implement Graphic User Interface (GUI) functionality.
ActiveX controls may be embedded into applications. For example, Internet Explorer, Microsoft Office, Microsoft Visual Studio and Windows Media Player all include or use ActiveX objects.
However, there currently exists no effective way for a first application (or external application) to interoperate with an ActiveX control embedded in a second application (or embedding application). Typically, ActiveX does not provide the ability to share information and functionality across application boundaries.
More specifically, an ActiveX control embedded in an application is executed in the context of the embedding application, but the embedding application does not expose the embedded ActiveX control to external applications. There currently exist no systems or methods for a standard and/or automated interface with an embedded ActiveX control. For example, there exists no system or method to enable an external application to obtain or access properties, methods and/or events of an embedded ActiveX control.